  Okay, for image output, you must know original image dimentions.  Since we're using your .bmp image dumps, that can be determined by looking at +0x10 and +0x14 of each image.  

  The image mapping values always count from top left corner of each image.  They are really the numerators of a hex percent.  The denominator is 0x20 the x/y for that image.

  Any value that exceeds the max dimention *tiles*.  Negative values are mapped backwards.  For instance:

20x20 image
x-max 0400
y-max 0400

some sample mapping values:
four points from mapping	0000 0000, 0400 0000, 0000 0400, 0400 0400
four percentages for image	0 0, 1 0, 0 1, 1 1

this makes a square where each side is a corner of the image.  It will look just like the sample image
--------------
four points from mapping	0000 0000, 0800 0000, 0000 0800, 0800 0800
four percentages for image	0 0, 2 0, 0 2, 2 2

this makes a square where the image is tiled.  If, for inastance, this where a light fixture, you would see four lights, since it is doubled on both the x and y axis.
--------------
four points from mapping	0000 0000, FC00 0000, 0000 FC00, FC00 FC00
four percentages for image	0 0, -1 0, 0 -1, -1 -1

this image will be exactly like the first sample, except the image will be flipped.
--------------

So, use values and original image dimentions to produce hex percents.